#ifndef PHYSICSMANAGER_H_
#define PHYSICSMANAGER_H_

#include <Box2D/Box2D.h>
#include "RectEntity.h"
#include "CircleEntity.h"

class PhysicsManager
{
public:
	PhysicsManager();
	~PhysicsManager();

	void setupWorld(b2Vec2 gravity);
	void updateGameWorld(std::vector<RectEntity*> activeRectList, std::vector<CircleEntity*> activeCircleList, float32 timeStep);
	b2World *getGameWorld();
private:
	void applyRectChanges(std::vector<RectEntity*> activeRectList);
	void applyCircleChanges(std::vector<CircleEntity*> activeCircleList);
private:
	b2World *gameWorld;

};

#endif